﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
//using VietPublisher.Membership;
using VietPublisher.BSL.BK;
namespace VietPublisher.Repositories.Interface
{
    public interface ICategoryRepository
    {
        /// <summary>
        /// Get List Categorys
        /// </summary>
        /// <returns></returns>
        List<T_BK_Category> GetCategorys();

        /// <summary>
        /// Get parent of categoryID
        /// </summary>
        /// <param name="categoryChildID"></param>
        /// <returns></returns>
        T_BK_Category GetParentCategory(int categoryChildID);

        /// <summary>
        /// Get list of child Category by CategoryParentID
        /// </summary>
        /// <param name="categoryParentID"></param>
        /// <returns></returns>
        List<T_BK_Category> GetChildCategory(int categoryParentID);

        /// <summary>
        /// Get Categories by BookID 
        /// </summary>
        /// <param name="bookID"></param>
        /// <returns></returns>
        T_BK_Category GetCategoryByBookID(int bookID);

        /// <summary>
        /// Get CategoryName by CategoryID
        /// </summary>
        /// <param name="categoryID"></param>
        /// <returns></returns>
        String GetCategoryName(int categoryID);

        /// <summary>
        /// Get CategoryCode by CategoryID
        /// </summary>
        /// <param name="categoryID"></param>
        /// <returns></returns>
        String GetCategoryCode(int categoryID);

        /// <summary>
        /// Get Category Level by CategoryID
        /// </summary>
        /// <param name="categoryID"></param>
        /// <returns></returns>
        int GetCategoryLevel(int categoryID);

        /// <summary>
        /// Get Categories of Admin
        /// </summary>
        /// <returns></returns>
        List<T_BK_Category> GetCategoryAdmin();

        /// <summary>
        /// Get Categories of Customer
        /// </summary>
        /// <returns></returns>
        List<T_BK_Category> GetCategoryCustomer();


    }
}
